package com.onpositive.gamemaker.rcp;

import org.eclipse.swt.graphics.Point;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.application.ActionBarAdvisor;
import org.eclipse.ui.application.IActionBarConfigurer;
import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
import org.eclipse.ui.application.WorkbenchWindowAdvisor;

import com.onpositive.gamemaker.editor.ViewUtil;
import com.onpositive.gamemaker.rcp.environment.WorkspaceLocationProvider;
import com.onpositive.gamemaker.treeview.DirectoryView;

public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor {

    public ApplicationWorkbenchWindowAdvisor(IWorkbenchWindowConfigurer configurer) {
        super(configurer);
    }

    public ActionBarAdvisor createActionBarAdvisor(IActionBarConfigurer configurer) {
        return new ApplicationActionBarAdvisor(configurer);
    }
    
    public void preWindowOpen() {
        IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
        configurer.setInitialSize(new Point(800, 600));
        configurer.setShowCoolBar(false);
        configurer.setShowStatusLine(false);
        //configurer.setShowPerspectiveBar(true);
        configurer.setTitle("Game Editor"); //$NON-NLS-1$
    }
    
    public void postWindowOpen()
    {
    	super.postWindowOpen();
        IWorkbenchPart part = ViewUtil.getReference(DirectoryView.ID).getPart(false);
        String path = WorkspaceLocationProvider.getWorkspaceURL().getPath();
        if (part != null)
		{
			((DirectoryView)part).setInitialLocation(path);
		}
        
    }
}
